﻿
var loadfs=[];
var n=0;
var fr;
function filesAdded(uploader,files,target,name){
		if(files.length>0)n--;
		for(var i=0;i<files.length;i++){
				var file=files[i];
				loadfs.push(file);
				$(target).append(getPlFileHtml(file.id,'',name));
		}
		loadprew();
}
function getPlFileHtml(fid,fpath,name){
	var p="/plugins/plupload2/preview.jpg";
	var v="";
	if(fpath){p=fpath;v=fid;}
	var putname="bean.photo";
	if(name)putname=name;
	var h="<div class='pl_upimgdiv' id='plfile_"+fid+"'><img id='plimg"+fid+"' src='"+ctx+p+"'/><div class='file_del'><a href=\"javascript:delplphoto('"+fid+"')\" title='移除'></a></div><div class='file_progress'></div><div class='file_txt'>等待上传</div><input name='"+putname+"' type='hidden' id='plimgurl_"+fid+"' value='"+v+"'></div>"; 
	return h;
}
function getPlFileHtml2(fid,fpath,name){
	var p="/plugins/plupload2/preview.jpg";
	var v="";
	if(fpath){p=fpath;v=fpath;}
	var putname="bean.photo";
	if(name)putname=name;
	var h="<div class='pl_upimgdiv' id='plfile_"+fid+"'><img id='plimg"+fid+"' src='"+ctx+p+"'/><div class='file_del'><a href=\"javascript:delplphoto('"+fid+"')\" title='移除'></a></div><div class='file_progress'></div><div class='file_txt'>等待上传</div><input name='"+putname+"' type='hidden' id='plimgurl_"+fid+"' value='"+v+"'></div>"; 
	return h;
}
function loadprew(){
	n++;
	if(n<loadfs.length){
		previewImage(loadfs[n],function(imgsrc){
			$("#plimg"+loadfs[n].id).attr('src',imgsrc);
			if(fr){
				fr.destroy();
				fr = null;
			}
			loadprew();
		})
	}
}

function uploadProgress(uploader,file){
	var f=$('#plfile_'+file.id);
	var d=$(".file_progress",f);
	var w=f.width()*parseInt(file.percent)/100;
	d.css("width",w+"px");
	$(".file_txt",f).html(file.percent+"%");
}

function upError(up, err,maxsize){
	if(err.code!="-602"){
		if(err.code=="-600")
			alert("选择的文件过大，只能上传小于"+maxsize);
		else
			alert(err.code+"-"+err.message);
	}
	return false;
}

//plupload中为我们提供了mOxie对象
	//有关mOxie的介绍和说明请看：https://github.com/moxiecode/moxie/wiki/API
	//如果你不想了解那么多的话，那就照抄本示例的代码来得到预览的图片吧
function previewImage(file,callback){//file为plupload事件监听函数参数中的file对象,callback为预览图片准备完成的回调函数
		if(!file || !/image\//.test(file.type)) return; //确保文件是图片
		if(file.type=='image/gif'){//gif使用FileReader进行预览,因为mOxie.Image只支持jpg和png
			fr = new mOxie.FileReader();
			fr.onload = function(){
				callback(fr.result);
			}
			fr.readAsDataURL(file.getSource());
		}else{
			var preloader = new mOxie.Image();
			preloader.onload = function() {
				preloader.downsize( 300, 300 );//先压缩一下要预览的图片,宽300，高300
				var imgsrc = preloader.type=='image/jpeg' ? preloader.getAsDataURL('image/jpeg',80) : preloader.getAsDataURL(); //得到图片src,实质为一个base64编码的数据
				callback && callback(imgsrc); //callback传入的参数为预览图片的url
				preloader.destroy();
				preloader = null;
			};
			preloader.load( file.getSource() );
		}	
}
function previewImageOne(file,callback){
	if(!file || !/image\//.test(file.type)) return; //确保文件是图片
		if(file.type=='image/gif'){//gif使用FileReader进行预览,因为mOxie.Image只支持jpg和png
			var fr2 = new mOxie.FileReader();
			fr2.onload = function(){
				callback(fr2.result);
				fr2.destroy();
				fr2 = null;
			}
			fr2.readAsDataURL(file.getSource());
		}else{
			var preloader = new mOxie.Image();
			preloader.onload = function() {
				//preloader.downsize( 300, 300 );//先压缩一下要预览的图片,宽300，高300
				var imgsrc = preloader.type=='image/jpeg' ? preloader.getAsDataURL('image/jpeg',80) : preloader.getAsDataURL(); //得到图片src,实质为一个base64编码的数据
				callback && callback(imgsrc); //callback传入的参数为预览图片的url
				preloader.destroy();
				preloader = null;
			};
			preloader.load( file.getSource() );
		}
}